package com.tju.ocean_ecology_website.dto;

import com.tju.ocean_ecology_website.entity.ActivitySignup;
import com.tju.ocean_ecology_website.entity.User;
import lombok.Data;

import java.util.Date;

/**
 * 项目参与者DTO
 */
@Data
public class ProjectParticipantDTO {
    
    /**
     * 用户ID
     */
    private Long userId;
    
    /**
     * 用户名
     */
    private String username;
    
    /**
     * 姓名
     */
    private String name;
    
    /**
     * 手机号
     */
    private String phone;
    
    /**
     * 报名ID
     */
    private Long signupId;
    
    /**
     * 报名状态：0-待审核, 1-已通过, 2-已拒绝
     */
    private Integer status;
    
    /**
     * 报名时间
     */
    private Date signupTime;
    
    /**
     * 留言
     */
    private String message;
    
    /**
     * 从用户和报名信息构建DTO
     */
    public static ProjectParticipantDTO fromUserAndSignup(User user, ActivitySignup signup) {
        ProjectParticipantDTO dto = new ProjectParticipantDTO();
        
        if (user != null) {
            dto.setUserId(user.getId());
            dto.setUsername(user.getUsername());
            dto.setName(user.getName());
            dto.setPhone(user.getPhone());
        }
        
        if (signup != null) {
            dto.setSignupId(signup.getId());
            dto.setStatus(signup.getStatus());
            dto.setSignupTime(signup.getSignupTime());
            dto.setMessage(signup.getMessage());
        }
        
        return dto;
    }
}
